跳到内容

一个项目学完单片机 ​

一个完整项目、三个章节:从点亮一颗 LED 开始,到做成一台能蓝牙遥控的小车,沿路覆盖 GPIO、PWM、ADC、定时器与中断、串口蓝牙、PID、传感器滤波、AI 编程与工程管理。


🧭 选择开发板 ​

🔵 STM32F103C8T6 ​

STM32F103C8T6 开发板教程。

🔴 Arduino Uno R3 ​

Arduino Uno R3 开发板教程。

🟢 Raspberry Pi Pico ​

Raspberry Pi Pico C/C++ 开发板教程。


🎯 三个小目标 ​

① 一章一个小目标,三章一个完整遥控小车 ​

② 使用最现代化、最官方化、最 AI 化的开发工具链 ​

③ STM32F103C8T6 / Arduino Uno R3 / Raspberry Pi Pico 三套主流开发板并行录制 ​


📚 技能点总览 ​

第 1 章 · 上手完成第一台遥控车 ​

从点亮第一颗 LED 到通过蓝牙遥控小车,掌握单片机基础外设与 C 语言核心语法。

小节技能点
1.1 从一束光开始:GPIO 推挽输出GPIO 输出(推挽)、函数调用、while循环
1.2 相信光,成为光:GPIO 上拉输入GPIO 输入(上拉)、宏定义、变量、flag标志位、作用域、条件语句、static变量
1.3 呼吸的光才有灵魂:PWM 与 TIM 定时器PWM 脉宽调制、TIM 定时器、include头文件、PWM配置结构体、if-else条件语句、const常量、全局变量、边界条件控制
1.4 才第四节就这么复杂了?:参数传入返回与 USB 通信USB 串口通信、函数返回值、函数传入参数、printf调试输出
1.5 我要用 GPIO 和 PWM 干票大的:TB6612 与电机控制PWM 电机调速、引脚资源分配、累加取模
1.6 恭喜你,你已经会做多级 API 了:多层 API 设计多层 API 设计、差速转向叠加原理、速度限幅
1.7 追着车跑一定很累吧:UART 串口与蓝牙模块UART 串口通信、HC-05 蓝牙模块、uart_is_readable/writable可读/可写判断、指针遍历字符串
1.8 遥控车!启动!:状态机与通信协议UART 通信协议、状态机设计、缓冲区轮询、switch条件语句、校验和验证

第 2 章 · 控制算法让车自己导航 ​

对小车进行升级改造,从编码器测速到 PID 控制、超声波避障,最终实现一键自主导航。

小节技能点
2.0 项目文件 +1:多文件项目结构多文件工程管理、头文件声明、源文件实现、编译单元与链接
2.1 马达现在才接了两根线:编码器与触发中断GPIO 外部中断(IRQ)、编码器测速、数组、中断回调函数、for循环、中断安全处理、三目运算符、中断回调注册
2.2 精准控制时代:PID 控制算法PID 控制算法、定时轮询、限幅函数、积分抗饱和、抽象单位
2.3 迫不及待加到小车上了:定时中断与位运算TIM 定时器中断、定时中断回调、位运算解析标志位
2.4 从速度控制到位置控制:梯形速度规划位置闭环控制、梯形速度规划、位置累加、abs绝对值计算
2.5 开始感知世界:超声波测距与连续数据滤波超声波测距(HC-SR04)、超时机制、时间戳轮询、指数加权滤波、滑动窗均值/中值滤波、冒泡排序
2.6 升级!获得雷达!:舵机 PWM 控制PWM 舵机控制(SG90)、线性映射函数、嵌套for循环扫描
2.7 你已经是一个成熟的小车了:自动避障规则自动避障算法、非阻塞延时、重心加权计算、折返扫描算法
2.8 合成!大遥控车!:模式切换与综合控制多模式综合控制、综合控制架构、定时器动态切换

第 3 章 · AI 做陀螺仪摇杆遥控器 ​

本章面向 AI 编程思路设计,通过 I2C 读取陀螺仪、ADC 采样摇杆,整合为一套完整无线遥控系统,并掌握工程化技能。

小节技能点
3.1 从屏幕和陀螺仪开始:I2C / SPI / CAN / 1Wire 通信协议I2C 通信、SPI 通信、UART 通信、CAN 通信、1-Wire 通信、多从机寻址
3.2 用知识处理陀螺仪数据:六轴传感器与互补滤波算法MPU6050 六轴传感器(I2C)、互补滤波算法、加速度计测角度、陀螺仪测角速度、数据融合
3.3 再加一个摇杆!:ADC 采样与摇杆控制ADC 模数转换、采样、保持、量化、编码、模拟摇杆数值映射
3.4 做自己的遥控器:HC-05 主从绑定蓝牙(HC-05)主从通信、主从模式配置与无线通信
3.5 终于!大功告成!:AI 编程实战UART 状态机协议整合、提示词驱动、系统联调
3.6 更优雅的遥控器形态:PCB 快速教程PCB 电路设计、面包板转 PCB、打样流程
3.7 更专业高级的调试:Debug 调试工具Debug 调试工具、专业调试方法与工具链
3.8 更流畅安全的管理:Git 版本管理Git 版本控制、项目版本管理与备份协作